There is a method of managing communication devices in a group in order to efficiently manage a number of communication devices that are connected via a network. A communication device (hereinafter, referred to as an “issuing device”) that issues a group management command issues a command to a group of communication devices, for example, using multicast communication. The communication devices belonging to the group perform processing according to a received command.
At this time, a problem may occur in a system when processing is performed according to a command issued in the past. In order to incur the problem, a retransmission attack is known in which a command issued in the past is intentionally retransmitted. As a method of preventing this attack, there is a method of adding version information to each command and determining whether a command is a command issued in the past.
However, when typical multicast communication is used, it is not guaranteed that the order in which the issuing device transmits the commands is the same as the order in which the communication devices of the same group receive the commands. In addition, data transmitted by the issuing device is unlikely to reach a target communication device. In a state in which the command is not received, when a command received thereafter is executed, a problem may occur in connection with the consistency of process or an internal state of the communication device. Meanwhile, when execution of a command received after a reception failure is detected is put on hold, a problem occurs in readiness of a system. When a reception failure occurs, an optimal command processing method differs according to a configuration, a status, or the purpose of a system. For this reason, it is difficult for a communication device to decide an optimal processing method based on the received command and to execute the command.